package org.nepu.srr.设备设施本体风险.直观检查.动力及辅助设备;

import lombok.Data;
import org.nepu.sc.domain.CommonIn;
import org.nepu.sc.domain.CommonMethods;
import org.nepu.sc.domain.DataVO;

import javax.persistence.Convert;

@Data
public class B23aPowerParams {
    //主柴油机整体外观状况	□符合              □不符合
    DataVO estimate1;

    //平台上应备有初始启动设备，该设备应能在没有外部动力供给的情况下启动	□符合              □不符合
    DataVO estimate2;

    //发动机的助燃空气应从安全区吸入，每台发动机应有独立的排气管路并装有消音器，其出口应通到平台安全区的开敞空间	□符合              □不符合
    DataVO estimate3;

    //发动机应安装于安全区内，如不可避免安装在危险区内，其安装处所应予以封闭，并采取相应措施使之成为安全处所	□符合              □不符合
    DataVO estimate4;

    //原则上曲轴箱应避免使用透气管和可能使外部空气流进曲轴箱的任何装置。曲轴箱如设有透气管时，其出口应通到平台安全区的开敞空间，并应按实际可行使透气管尽量小些。两台或多台柴油机的透气管不允许相互连接	□符合              □不符合
    DataVO estimate5;

    //柴油机排气管以及涡轮增压器、波纹管等高温部位应严禁有裸露现象，高温隔热棉设施应完好	□符合              □不符合
    DataVO estimate6;

    //外观检查，检查螺丝有无松动，是否有任何漏油、漏水等现象	□无松动            □松动□无泄漏            □泄漏
    CommonIn estimate7;

    //检查柴油机机油油位、滑油油质是否正常，冷却水水位是否正常，日用燃油罐燃油是否充足	□正常              □不正常
    DataVO estimate8;

    //下列设备应配备安全装置：	□符合              □不符合
    //a）汽缸直径大于200mm或曲柄箱容积大于0.6m3的柴油机，曲柄箱上应装防爆门；
    //b）汽缸直径大于230mm的柴油机，每个气缸盖上应装有安全阀；
    //c）在与气缸直接连通的扫气箱上，应设防爆安全阀并设透气装置；
    //d）上述安全装置的排气口的位置应使排出气体不致伤人；
    //e）柴油机至少应安装润滑油低油压、缸套水高水温、超速报警及关断安全装置和应急停车装置
    DataVO estimate9;

    //作业环境温度低于0℃的区域，应使用冬季燃料及油品；添加防冻液，其冰点应低于-35℃	□符合              □不符合
    DataVO estimate10;

    //现场及遥控面板的标识情况	□完整              □不全
    DataVO estimate11;

    //各系统管线的状况	□符合              □不符合
    DataVO estimate12;

    //主机高温部位隔离情况	□隔离              □未隔离
    DataVO estimate13;

    //冷却水水位及水质情况	□正常              □不正常
    DataVO estimate14;

    //机舱通风情况	□正常              □不正常
    DataVO estimate15;

    //机舱噪声情况	□符合              □不符合
    DataVO estimate16;

    //高低温冷却水系统的温度和压力	□正常              □温度高□压力高            □压力低□温度低
    DataVO estimate17;

    //润滑油、燃油系统压力	□正常              □压力高□压力低
    DataVO estimate18;

    //启动系统、控制系统空气压力	□正常              □压力高□压力低
    DataVO estimate19;

    //冷却风扇护罩的固定状况	□牢固              □松动
    DataVO estimate20;

    //地脚螺栓固定状况	□牢固              □松动
    DataVO estimate21;

    //易损件的储存状况	□充足              □缺失
    DataVO estimate22;

    //主发电机的外部状况	□完好              □有缺陷
    DataVO estimate23;

    //主发电机空气滤网的状况	□完好              □有缺陷
    DataVO estimate24;

    //主发电机轴承的润滑情况	□良好              □不合格
    DataVO estimate25;

    //电站主开关板及电机控制中心板绝缘橡胶垫（不导电材料）或网格板配置情况	□已配置            □未配置
    DataVO estimate26;

    //电站主开关板及电机控制中心设备禁用标牌的配置情况	□已配置            □未配置
    DataVO estimate27;

    //电站主开关板及电机控制中心开关板内是否清洁情况	□清洁              □不清洁
    DataVO estimate28;

    //电站主开关板及电机控制中心接头有无过热现象	□有                □无
    DataVO estimate29;

    //电站主开关板及电机控制中心指示仪表工作状况	□正常              □不正常
    DataVO estimate30;

    //空气压缩机整体外观状况	□完好              □损坏□磨损
    DataVO estimate31;

    //检查空压机主、辅助电机绝缘情况	□符合              □不符合
    DataVO estimate32;

    //外观检查，检查螺丝有无松动，是否有任何漏油、漏水、异常噪声及振动等现象	□正常              □不正常
    DataVO estimate33;

    //空压机应带有压力调节器 使系统工作压力自动保持在一定范围内如0.7MPa压缩机供气至1MPa时应能自动停车	□符合              □不符合
    DataVO estimate34;

    //空气压缩机的吸气口应位于安全区内	□符合              □不符合
    DataVO estimate35;

    //空气压缩机装置应设有从压缩空气中分离油和水的设施	□符合              □不符合
    DataVO estimate36;

    //有专用空气压缩机向气动仪表供气时，空气压缩机宜设置备用机组，应能自动保持仪表和公用空气系统的压力	□符合              □不符合
    DataVO estimate37;

    //空气压缩机装置的每一级、后冷却器、油水分离器、空气干燥器、空气瓶等均应设安全阀	□符合              □不符合
    DataVO estimate38;

    //空气压缩机应设有润滑油低油压的报警和关断	□符合              □不符合
    DataVO estimate39;

    //空气压缩机应设有排气高压、低压报警	□符合              □不符合
    DataVO estimate40;

    //空气压缩机应设有排气超温报警	□符合              □不符合
    DataVO estimate41;

    //空压机仪表空气系统应设有低压报警和超低压应急关断	□符合              □不符合
    DataVO estimate42;

    //空压机往复式空气压缩机，其曲轴箱容积超过0.6m3时，应设防爆门	□符合              □不符合
    DataVO estimate43;

    //空压机罐标识情况	□完整              □不全
    DataVO estimate44;

    public B23aPowerResult rate(){
        double fullScore = 225;
        double score = 0;
        if (estimate1.getData().equals("合格")) {
            score += 5;
        }
        if (estimate2.getData().equals("合格")) {
            score += 10;
        }
        if (estimate3.getData().equals("合格")) {
            score += 5;
        }
        if (estimate4.getData().equals("合格")) {
            score += 5;
        }
        if (estimate5.getData().equals("合格")) {
            score += 5;
        }
        if (estimate6.getData().equals("合格")) {
            score += 5;
        }
        if (CommonMethods.isAllTrue(estimate7.getInput())) {
            score += 5;
        }
        if (estimate8.getData().equals("合格")) {
            score += 5;
        }
        if (estimate9.getData().equals("合格")) {
            score += 5;
        }
        if (estimate10.getData().equals("合格")) {
            score += 5;
        }
        if (estimate11.getData().equals("合格")) {
            score += 5;
        }
        if (estimate12.getData().equals("合格")) {
            score += 5;
        }
        if (estimate13.getData().equals("合格")) {
            score += 5;
        }
        if (estimate14.getData().equals("合格")) {
            score += 5;
        }
        if (estimate15.getData().equals("合格")) {
            score += 5;
        }
        if (estimate16.getData().equals("合格")) {
            score += 5;
        }
        if (estimate17.getData().equals("合格")) {
            score += 5;
        }
        if (estimate18.getData().equals("合格")) {
            score += 5;
        }
        if (estimate19.getData().equals("合格")) {
            score += 5;
        }
        if (estimate20.getData().equals("合格")) {
            score += 5;
        }
        if (estimate21.getData().equals("合格")) {
            score += 5;
        }
        if (estimate22.getData().equals("合格")) {
            score += 5;
        }
        if (estimate23.getData().equals("合格")) {
            score += 5;
        }
        if (estimate24.getData().equals("合格")) {
            score += 5;
        }
        if (estimate25.getData().equals("合格")) {
            score += 5;
        }
        if (estimate26.getData().equals("合格")) {
            score += 5;
        }
        if (estimate27.getData().equals("合格")) {
            score += 5;
        }
        if (estimate28.getData().equals("合格")) {
            score += 5;
        }
        if (estimate29.getData().equals("合格")) {
            score += 5;
        }
        if (estimate30.getData().equals("合格")) {
            score += 5;
        }
        if (estimate31.getData().equals("合格")) {
            score += 5;
        }
        if (estimate32.getData().equals("合格")) {
            score += 5;
        }
        if (estimate33.getData().equals("合格")) {
            score += 5;
        }
        if (estimate34.getData().equals("合格")) {
            score += 5;
        }
        if (estimate35.getData().equals("合格")) {
            score += 5;
        }
        if (estimate36.getData().equals("合格")) {
            score += 5;
        }
        if (estimate37.getData().equals("合格")) {
            score += 5;
        }
        if (estimate38.getData().equals("合格")) {
            score += 5;
        }
        if (estimate39.getData().equals("合格")) {
            score += 5;
        }
        if (estimate40.getData().equals("合格")) {
            score += 5;
        }
        if (estimate41.getData().equals("合格")) {
            score += 5;
        }
        if (estimate42.getData().equals("合格")) {
            score += 5;
        }
        if (estimate43.getData().equals("合格")) {
            score += 5;
        }
        if (estimate44.getData().equals("合格")) {
            score += 5;
        }
        double rate = score / fullScore * 100;
        B23aPowerResult result = new B23aPowerResult();
        result.setRateScore(rate);
        String s = CommonMethods.toGrade(rate);
        result.setRateResult(s);
        return result;
    }
}
